﻿// =================================================================== 
// 业务逻辑层(GDIT.BLL)
//====================================================================
// 文件：BFiles.cs
// 项目名称：学院网站
// 创建时间：2012-08-12
// 负责人：ChenZhiGang
//引用DevExpress.Data.Filtering，DevExpress.Xpo程序集
// 程序集介绍：文件信息操作逻辑
// ===================================================================
using DevExpress.Xpo;
using DevExpress.Data.Filtering;
using GDIT.Base.LogHelper;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using GDIT.Model;

namespace GDIT.BLL
{
    public class BFiles
    {
        private Pattern.DALAbstractFactory dataFactory = DataProvider.defaultProvider;

        /// <summary>
        /// 新增文件对象
        /// </summary>
        /// <param name="file">需要新增的文件对象</param>
        /// <returns>1：新增成功 0：新增失败</returns>
        public bool InsertFiles(Mtb_Files file)
        {
            Logger.Info(String.Format("文件名字[{0}]", file.FileName));
            int result = dataFactory.DALFilesProvider.InsertFiles(file);
            if (result == 1)
            {
                Logger.Info("Insert success");
                return true;
            }
            else
            {
                Logger.Info("Insert false");
                return false;
            }
        }

        /// <summary>
        /// 更新文件对象
        /// </summary>
        /// <param name="file">需要更新的文件对象</param>
        /// <returns>1：更新成功 0：更新失败</returns>
        public bool UpdateFiles(Mtb_Files file)
        {
            Logger.Info(String.Format("文件名字[{0}]", file.FileName));
            int result = dataFactory.DALFilesProvider.UpdateFiles(file);
            if (result == 1)
            {
                Logger.Info("Update success");
                return true;
            }
            else
            {
                Logger.Info("Update false");
                return false;
            }
        }

        /// <summary>
        /// 删除文件对象
        /// </summary>
        /// <param name="file">需要删除的文件对象</param>
        /// <returns>1：删除成功 0：删除失败</returns>
        public bool DeleteFiles(Mtb_Files file)
        {
            Logger.Info(String.Format("文件名字[{0}]", file.FileName));
            int result = dataFactory.DALFilesProvider.DeleteFiles(file);
            if (result == 1)
            {
                Logger.Info("Delete success");
                return true;
            }
            else
            {
                Logger.Info("Delete false");
                return false;
            }
        }

        /// <summary>
        /// 查询单一的文件对象
        /// </summary>
        /// <param name="file">需要查询的单一文件对象</param>
        /// <returns>单一文件对象</returns>
        public Mtb_Files SelectFileByFile(Mtb_Files file)
        {
            return dataFactory.DALFilesProvider.SelectFileByFile(file);
        }

        /// <summary>
        /// 返回所有的文件对象
        /// </summary>
        /// <returns></returns>
        public XPCollection SelectAllFiles()
        {
            return dataFactory.DALFilesProvider.SelectAllFiles();
        }
    }
}
